package com.weixing.mall.provider.model.vo.order;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.weixing.mall.base.constant.DatePattern;
import com.weixing.mall.base.enums.WhetherEnum;
import com.weixing.mall.provider.api.model.enums.OrderTypeEnum;
import com.weixing.mall.provider.model.enums.*;
import lombok.Data;

import java.util.Date;

/**
 * OrderVo
 *
 * @author  siashan
 * @since  2.0
 **/
@Data
public class OrderVo {

    /**
     * 订单id
     */
    private Long id;
    /**
     * 会员id
     */
    private Long memberId;
    /**
     * 订单编号
     */
    private String orderSn;
    /**
     * 订单金额
     */
    private Double orderPrice;
    /**
     * 实付金额
     */
    private Double actualPrice;
    /**
     * 快递单号
     */
    private String expressSn;
    /**
     * 是否支付
     */
    private WhetherEnum isPay;
    /**
     * 审核时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern= DatePattern.NORM_DATETIME_PATTERN)
    private Date auditTime;
    /**
     * 发货时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern=DatePattern.NORM_DATETIME_PATTERN)
    private Date shipTime;
    @JsonFormat(locale="zh", timezone="GMT+8", pattern=DatePattern.NORM_DATETIME_PATTERN)
    private Date receiptTime;
    private OrderStateEnum orderStatus;
    private String agentSn;
    private String agentName;
    private Long customerId;
    private String  customerName;
    private Long shipperId;
    private OrderTypeEnum orderType;
    private OrderIsSettleEnum isSettle;
    private OrderFromEnum orderFrom;
    private OrderIsPrintEnum isOrderSnPrint;
    private OrderIsPrintEnum isGoodsSnPrint;
    private Long depotId;
    private Integer mateRule;
    private Long deptId;
    private OrderIsDeleteEnum isDelete;
    private String remark;
    private String actId;
    @JsonFormat(locale="zh", timezone="GMT+8", pattern=DatePattern.NORM_DATETIME_PATTERN)
    private Date createdTime;

    private Long auditor;
    private Integer auditDept;

}
